+Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
+
+ * docs/gtk_tut_it.sgml: Update of Italian Tutorial
+ to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
+
Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
* docs/gtk_tut.sgml:
+Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
+
+ * docs/gtk_tut_it.sgml: Update of Italian Tutorial
+ to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
+
Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
* docs/gtk_tut.sgml:
+Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
+
+ * docs/gtk_tut_it.sgml: Update of Italian Tutorial
+ to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
+
Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
* docs/gtk_tut.sgml:
+Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
+
+ * docs/gtk_tut_it.sgml: Update of Italian Tutorial
+ to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
+
Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
* docs/gtk_tut.sgml:
+Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
+
+ * docs/gtk_tut_it.sgml: Update of Italian Tutorial
+ to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
+
Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
* docs/gtk_tut.sgml:
+Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
+
+ * docs/gtk_tut_it.sgml: Update of Italian Tutorial
+ to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
+
Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
* docs/gtk_tut.sgml:
+Mon Jun 1 12:47:56 BST 1998 Tony Gale <gale@gtk.org>
+
+ * docs/gtk_tut_it.sgml: Update of Italian Tutorial
+ to Tutorial of 24th May, from Daniele Canazza <dcanazz@tin.it>
+
Fri May 29 13:53:57 BST 1998 Tony Gale <gale@gtk.org>
* docs/gtk_tut.sgml:
name="<imain@gtk.org>"></tt>,
Tony Gale <tt><htmlurl url="mailto:gale@gtk.org"
name="<gale@gtk.org>"></tt>
-<date>April 6th, 1998 - Traduzione aggiornata al 1 Maggio 1998
+<date>May 24th, 1998 - Traduzione aggiornata al 27 Maggio 1998
<abstract>Tradotto da Michel Morelli, <tt><htmlurl url="mailto:ziobudda@chiara.dei.unipd.it" name="ziobudda@chiara.dei.unipd.it"></tt>, Daniele Canazza, <tt><htmlurl url="mailto:dcanazz@tin.it" name="dcanazz@tin.it"></tt> e Antonio Schifano, <tt><htmlurl url="mailto:schifano@cli.di.unipi.it" name="schifano@cli.di.unipi.it"></tt>
</abstract>
ritorno (callback)'', e dovrebbe essere della forma:
<tscreen><verb>
-void callback_func(GtkWidget *widget, gpointer *callback_data);
+void callback_func(GtkWidget *widget, gpointer callback_data);
</verb></tscreen>
<p>
Dove il primo argomento sarà un puntatore al widget che emette il segnale
per dire quale bottone è stato premuto.
<tscreen><verb>
-void hello (GtkWidget *widget, gpointer *data)
+void hello (GtkWidget *widget, gpointer data)
{
g_print ("Hello World\n");
}
quando gli viene restituito il controllo.
<tscreen><verb>
-void destroy (GtkWidget *widget, gpointer *data)
+void destroy (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
/* La nostra funzione di callback migliorata. I dati passati a questa
* vengono stampati su stdout. */
-void callback (GtkWidget *widget, gpointer *data)
+void callback (GtkWidget *widget, gpointer data)
{
g_print ("Hello again - %s was pressed\n", (char *) data);
}
/* Un'altra callback */
-void delete_event (GtkWidget *widget, gpointer *data)
+void delete_event (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
#include "gtk/gtk.h"
void
-delete_event (GtkWidget *widget, gpointer *data)
+delete_event (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
/* la nostra funzione di ritorno.
* i dati passati a questa funzione vengono stampati su stdout */
-void callback (GtkWidget *widget, gpointer *data)
+void callback (GtkWidget *widget, gpointer data)
{
g_print ("Hello again - %s was pressed\n", (char *) data);
}
/* questa funzione fa uscire dal programma */
-void delete_event (GtkWidget *widget, gpointer *data)
+void delete_event (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
}
/* la nostra solita funzione di callback */
-void callback (GtkWidget *widget, gpointer *data)
+void callback (GtkWidget *widget, gpointer data)
{
g_print ("Hello again - %s was pressed\n", (char *) data);
}
#include <gtk/gtk.h>
#include <glib.h>
-void close_application( GtkWidget *widget, gpointer *data ) {
+void close_application( GtkWidget *widget, gpointer data ) {
gtk_main_quit();
}
Con alcuni widget (per esempio con l'etichetta) i suggerimenti non funzionano.
<p>
La prima chiamata che si usa per creare un nuovo tooltip è la seguente.
-In una data funzione, è necessario chiamarla una sola volta: il GtkTooltip
-che viene ritornato da questa funzione può essere usato per creare suggerimenti
+In una data funzione, è necessario chiamarla una sola volta: il <tt/GtkTooltip/
+che viene restituito da questa funzione può essere usato per creare suggerimenti
multipli.
<tscreen><verb>
basta usare la seguente chiamata per fare l'assegnazione:
<tscreen><verb>
-void gtk_tooltips_set_tips (GtkTooltips *tooltips,
- GtkWidget *widget,
- gchar *tips_text);
+void gtk_tooltips_set_tip (GtkTooltips *tooltips,
+ GtkWidget *widget,
+ const gchar *tip_text,
+ const gchar *tip_private);
</verb></tscreen>
Il primo argomento è il suggerimento che era già stato creato, che è seguito
dal widget da cui volete che spunti il suggerimento e dal testo che volete
-venga mostrato.
+venga mostrato. L'ultimo argomento può essere posto a NULL.
<p>
Ecco un piccolo esempio:
tooltips = gtk_tooltips_new ();
button = gtk_button_new_with_label ("button 1");
...
-gtk_tooltips_set_tips (tooltips, button, "This is button 1");
+gtk_tooltips_set_tips (tooltips, button, "This is button 1", NULL);
</verb></tscreen>
-
Ci sono anche altre funzioni che si usano con i suggerimenti. Eccone una lista
con una breve descrizione di quello che fanno.
pstat = FALSE;
}
-void destroy (GtkWidget *widget, gpointer *data)
+void destroy (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
Per cui, per creare una nuova finestra di dialogo, uate:
<tscreen><verb>
-GtkWidget window;
+GtkWidget *window;
window = gtk_dialog_new ();
</verb></tscreen>
/* quando invocata (con il segnale delete_event), termina l'applicazione. */
-void close_application( GtkWidget *widget, gpointer *data ) {
+void close_application( GtkWidget *widget, gpointer data ) {
gtk_main_quit();
}
/* invocata se il bottone è clickato. Stampa semplicemente un messaggio */
-void button_clicked( GtkWidget *widget, gpointer *data ) {
+void button_clicked( GtkWidget *widget, gpointer data ) {
printf( "button clicked\n" );
}
/* quando invocata (con il segnale delete_event), termina l'applicazione. */
-void close_application( GtkWidget *widget, gpointer *data ) {
+void close_application( GtkWidget *widget, gpointer data ) {
gtk_main_quit();
}
/* il controllo raggiunge questa routine quando si preme il bottone close
*/
-void close_application( GtkWidget *widget, gpointer *data ) {
+void close_application( GtkWidget *widget, gpointer data ) {
gtk_main_quit();
}
GtkWidget *status_bar;
-void push_item (GtkWidget *widget, gpointer *data)
+void push_item (GtkWidget *widget, gpointer data)
{
static int count = 1;
char buff[20];
return;
}
-void pop_item (GtkWidget *widget, gpointer *data)
+void pop_item (GtkWidget *widget, gpointer data)
{
gtk_statusbar_pop( GTK_STATUSBAR(status_bar), (guint) &data );
return;
g_print ("%s\n", gtk_file_selection_get_filename (GTK_FILE_SELECTION (fs)));
}
-void destroy (GtkWidget *widget, gpointer *data)
+void destroy (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
gtk_widget_draw(GTK_WIDGET(notebook), NULL);
}
-void delete (GtkWidget *widget, gpointer *data)
+void delete (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
#include <gtk/gtk.h>
-void destroy(GtkWidget *widget, gpointer *data)
+void destroy(GtkWidget *widget, gpointer data)
{
gtk_main_quit();
}
che nel nostro caso è:
<tscreen><verb>
-gtk_menu_bar_append( menu_bar, file_item );
+gtk_menu_bar_append( GTK_MENU_BAR(menu_bar), file_item );
</verb></tscreen>
distribuzione di GTK. I nomi delle funzioni di GTK sono molto descrittivi.
Non appena si capisce come funzionano le cose, non è
difficile dedurre il modo d'uso di un widget semplicemente guardando la
-dichiarazione di funzione ad esso associata. Aggiungendo a questo qualche
+dichiarazione di funzione associata ad esso. Aggiungendo a questo qualche
spunto tratto dal codice di altri non dovrebbero esserci problemi.
Quando avrete raggiunto una comprensione globale di tutte le funzioni
name="<imain@gtk.org>"></tt>,
Tony Gale <tt><htmlurl url="mailto:gale@gtk.org"
name="<gale@gtk.org>"></tt>
-<date>April 6th, 1998 - Traduzione aggiornata al 1 Maggio 1998
+<date>May 24th, 1998 - Traduzione aggiornata al 27 Maggio 1998
<abstract>Tradotto da Michel Morelli, <tt><htmlurl url="mailto:ziobudda@chiara.dei.unipd.it" name="ziobudda@chiara.dei.unipd.it"></tt>, Daniele Canazza, <tt><htmlurl url="mailto:dcanazz@tin.it" name="dcanazz@tin.it"></tt> e Antonio Schifano, <tt><htmlurl url="mailto:schifano@cli.di.unipi.it" name="schifano@cli.di.unipi.it"></tt>
</abstract>
ritorno (callback)'', e dovrebbe essere della forma:
<tscreen><verb>
-void callback_func(GtkWidget *widget, gpointer *callback_data);
+void callback_func(GtkWidget *widget, gpointer callback_data);
</verb></tscreen>
<p>
Dove il primo argomento sarà un puntatore al widget che emette il segnale
per dire quale bottone è stato premuto.
<tscreen><verb>
-void hello (GtkWidget *widget, gpointer *data)
+void hello (GtkWidget *widget, gpointer data)
{
g_print ("Hello World\n");
}
quando gli viene restituito il controllo.
<tscreen><verb>
-void destroy (GtkWidget *widget, gpointer *data)
+void destroy (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
/* La nostra funzione di callback migliorata. I dati passati a questa
* vengono stampati su stdout. */
-void callback (GtkWidget *widget, gpointer *data)
+void callback (GtkWidget *widget, gpointer data)
{
g_print ("Hello again - %s was pressed\n", (char *) data);
}
/* Un'altra callback */
-void delete_event (GtkWidget *widget, gpointer *data)
+void delete_event (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
#include "gtk/gtk.h"
void
-delete_event (GtkWidget *widget, gpointer *data)
+delete_event (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
/* la nostra funzione di ritorno.
* i dati passati a questa funzione vengono stampati su stdout */
-void callback (GtkWidget *widget, gpointer *data)
+void callback (GtkWidget *widget, gpointer data)
{
g_print ("Hello again - %s was pressed\n", (char *) data);
}
/* questa funzione fa uscire dal programma */
-void delete_event (GtkWidget *widget, gpointer *data)
+void delete_event (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
}
/* la nostra solita funzione di callback */
-void callback (GtkWidget *widget, gpointer *data)
+void callback (GtkWidget *widget, gpointer data)
{
g_print ("Hello again - %s was pressed\n", (char *) data);
}
#include <gtk/gtk.h>
#include <glib.h>
-void close_application( GtkWidget *widget, gpointer *data ) {
+void close_application( GtkWidget *widget, gpointer data ) {
gtk_main_quit();
}
Con alcuni widget (per esempio con l'etichetta) i suggerimenti non funzionano.
<p>
La prima chiamata che si usa per creare un nuovo tooltip è la seguente.
-In una data funzione, è necessario chiamarla una sola volta: il GtkTooltip
-che viene ritornato da questa funzione può essere usato per creare suggerimenti
+In una data funzione, è necessario chiamarla una sola volta: il <tt/GtkTooltip/
+che viene restituito da questa funzione può essere usato per creare suggerimenti
multipli.
<tscreen><verb>
basta usare la seguente chiamata per fare l'assegnazione:
<tscreen><verb>
-void gtk_tooltips_set_tips (GtkTooltips *tooltips,
- GtkWidget *widget,
- gchar *tips_text);
+void gtk_tooltips_set_tip (GtkTooltips *tooltips,
+ GtkWidget *widget,
+ const gchar *tip_text,
+ const gchar *tip_private);
</verb></tscreen>
Il primo argomento è il suggerimento che era già stato creato, che è seguito
dal widget da cui volete che spunti il suggerimento e dal testo che volete
-venga mostrato.
+venga mostrato. L'ultimo argomento può essere posto a NULL.
<p>
Ecco un piccolo esempio:
tooltips = gtk_tooltips_new ();
button = gtk_button_new_with_label ("button 1");
...
-gtk_tooltips_set_tips (tooltips, button, "This is button 1");
+gtk_tooltips_set_tips (tooltips, button, "This is button 1", NULL);
</verb></tscreen>
-
Ci sono anche altre funzioni che si usano con i suggerimenti. Eccone una lista
con una breve descrizione di quello che fanno.
pstat = FALSE;
}
-void destroy (GtkWidget *widget, gpointer *data)
+void destroy (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
Per cui, per creare una nuova finestra di dialogo, uate:
<tscreen><verb>
-GtkWidget window;
+GtkWidget *window;
window = gtk_dialog_new ();
</verb></tscreen>
/* quando invocata (con il segnale delete_event), termina l'applicazione. */
-void close_application( GtkWidget *widget, gpointer *data ) {
+void close_application( GtkWidget *widget, gpointer data ) {
gtk_main_quit();
}
/* invocata se il bottone è clickato. Stampa semplicemente un messaggio */
-void button_clicked( GtkWidget *widget, gpointer *data ) {
+void button_clicked( GtkWidget *widget, gpointer data ) {
printf( "button clicked\n" );
}
/* quando invocata (con il segnale delete_event), termina l'applicazione. */
-void close_application( GtkWidget *widget, gpointer *data ) {
+void close_application( GtkWidget *widget, gpointer data ) {
gtk_main_quit();
}
/* il controllo raggiunge questa routine quando si preme il bottone close
*/
-void close_application( GtkWidget *widget, gpointer *data ) {
+void close_application( GtkWidget *widget, gpointer data ) {
gtk_main_quit();
}
GtkWidget *status_bar;
-void push_item (GtkWidget *widget, gpointer *data)
+void push_item (GtkWidget *widget, gpointer data)
{
static int count = 1;
char buff[20];
return;
}
-void pop_item (GtkWidget *widget, gpointer *data)
+void pop_item (GtkWidget *widget, gpointer data)
{
gtk_statusbar_pop( GTK_STATUSBAR(status_bar), (guint) &data );
return;
g_print ("%s\n", gtk_file_selection_get_filename (GTK_FILE_SELECTION (fs)));
}
-void destroy (GtkWidget *widget, gpointer *data)
+void destroy (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
gtk_widget_draw(GTK_WIDGET(notebook), NULL);
}
-void delete (GtkWidget *widget, gpointer *data)
+void delete (GtkWidget *widget, gpointer data)
{
gtk_main_quit ();
}
#include <gtk/gtk.h>
-void destroy(GtkWidget *widget, gpointer *data)
+void destroy(GtkWidget *widget, gpointer data)
{
gtk_main_quit();
}
che nel nostro caso è:
<tscreen><verb>
-gtk_menu_bar_append( menu_bar, file_item );
+gtk_menu_bar_append( GTK_MENU_BAR(menu_bar), file_item );
</verb></tscreen>
distribuzione di GTK. I nomi delle funzioni di GTK sono molto descrittivi.
Non appena si capisce come funzionano le cose, non è
difficile dedurre il modo d'uso di un widget semplicemente guardando la
-dichiarazione di funzione ad esso associata. Aggiungendo a questo qualche
+dichiarazione di funzione associata ad esso. Aggiungendo a questo qualche
spunto tratto dal codice di altri non dovrebbero esserci problemi.
Quando avrete raggiunto una comprensione globale di tutte le funzioni